--- /dev/null
+<?php\r
+\r
+/**\r
+ * Support functions for the deleteOldRevisions script\r
+ *\r
+ * @addtogroup Maintenance\r
+ * @author Rob Church <robchur@gmail.com>\r
+ */\r
+ \r
+require_once( 'purgeOldText.inc' );\r
+\r
+function DeleteArchivedRevisions( $delete = false ) {\r
+\r
+ # Data should come off the master, wrapped in a transaction\r
+ $dbw = wfGetDB( DB_MASTER );\r
+ $dbw->begin();\r
+ \r
+ $tbl_arch = $dbw->tableName( 'archive' );\r
+ # Delete as appropriate\r
+ echo( "Deleting archived revisions..." );\r
+ $dbw->query( "TRUNCATE TABLE $tbl_arch" );\r
+ echo( "done.\n" );\r
+ \r
+ $delete = $dbw->affectedRows() != 0;\r
+ \r
+ # This bit's done\r
+ # Purge redundant text records\r
+ $dbw->commit();\r
+ if( $delete ) {\r
+ PurgeRedundantText( true );\r
+ }\r
+\r
+}\r
+\r
+?>
\ No newline at end of file
--- /dev/null
+<?php\r
+\r
+/**\r
+ * Delete old (non-current) revisions from the database\r
+ *\r
+ * @addtogroup Maintenance\r
+ * @author Rob Church <robchur@gmail.com>\r
+ */\r
+\r
+$options = array( 'delete', 'help' );\r
+require_once( 'commandLine.inc' );\r
+require_once( 'deleteArchivedRevisions.inc' );\r
+\r
+echo( "Delete Archived Revisions\n\n" );\r
+\r
+if( @$options['help'] ) {\r
+ ShowUsage();\r
+} else {\r
+ DeleteArchivedRevisions( @$options['delete'] );\r
+}\r
+\r
+function ShowUsage() {\r
+ echo( "Deletes all archived revisions.\n\n" );\r
+ echo( "These revisions will no longer be restorable.\n\n" );\r
+ echo( "Usage: php deleteArchivedRevisions.php [--delete|--help]\n\n" );\r
+ echo( "delete : Performs the deletion\n" );\r
+ echo( " help : Show this usage information\n" );\r
+}\r
+\r
+?>
\ No newline at end of file